<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8" />
		<title>2.姓名案例_methods实现</title>
		<!-- 引入Vue -->
		<script type="text/javascript" src="../js/vue.js"></script>
	</head>
	<body>
		<!-- 使用methods实现姓名案例，比直接用插值好了一些，毕竟模板干净了，但是有效率问题 -->
		<!-- 
				两个效率问题：
					1.无关数据发生变化，依然会触发对应的方法执行。
					2.如果使用多次，没有任何的缓存机制，只是单纯的进行调用。
			-->
		<div id="demo">
			<h2>学校名：{{school}}</h2>
			<button @click="changeSchool">点我修改学校名</button> <br><br>
			姓：<input type="text" v-model="firstName"> <br>
			名：<input type="text" v-model="lastName"> <br>
			全名：<span>{{getFullName()}}</span> <br>
			全名：<span>{{getFullName()}}</span> <br>
			全名：<span>{{getFullName()}}</span> <br>
			全名：<span>{{getFullName()}}</span> <br>
			全名：<span>{{getFullName()}}</span> <br>
			全名：<span>{{getFullName()}}</span> <br>
			全名：<span>{{getFullName()}}</span> <br>
			全名：<span>{{getFullName()}}</span> <br>
		</div>

		<script type="text/javascript">
			new Vue({
				el:'#demo',
				data:{
					firstName:'zhang',
					lastName:'san',
					school:'尚硅谷'
				},
				methods:{
					getFullName(){
						console.log('getFullName')
						return this.firstName.slice(0,1).toUpperCase() + this.firstName.slice(1) + '-' + this.lastName
					},
					changeSchool(){
						this.school = 'atguigu'
					}
				}
			})
		</script>
	</body>
</html>